package com.united.ucts.modules.system.service;

import com.united.frame.common.module.pojo.dto.BaseTreeDto;
import com.united.frame.common.module.service.IBaseService;
import com.united.ucts.modules.system.pojo.po.Menu;

import java.util.List;

/**
 * 后台菜单管理Service
 */
public interface MenuService extends IBaseService<Menu> {
    /**
     * 创建后台菜单
     */
    int create(Menu menu);


    /**
     * 根据ID删除菜单
     */
    int delete(String id);

    /**
     * 修改后台菜单
     */
    int update(String id, Menu menu);

    /**
     * 根据ID获取菜单详情
     */
    Menu getItem(String id);

    /**
     * 分页查询后台菜单
     */
    List<Menu> pageBy(Integer pageNum, Integer pageSize, String parentId);

    /**
     * 树形结构返回所有菜单列表
     */
    List<BaseTreeDto> trees();

    /**
     * 修改菜单显示状态
     */
    int updateHidden(String id, Integer hidden);
}
